パッケージの紹介:flutter_lints
まとめ
のpackage:flutter_lints
推奨される lint の最新セットを定義します
Flutter アプリ、パッケージ、プラグインの適切なコーディング プラクティスを奨励します。
で作成されたプロジェクトflutter create
Flutter バージョン 2.5 以降を使用する場合は、
推奨される lint の最新セットを使用できるようにすでに有効になっています。作成されたプロジェクト
そのバージョンより前のバージョンは、このガイドの手順に従ってアップグレードできます。
コンテクスト
導入前package:flutter_lints
、Flutter フレームワーク
で定義された lint のセットが同梱されています。analysis_options_user.yaml
あれは
によって使用されますダーツアナライザーFlutter プロジェクトのコードの問題を特定するため
カスタムを定義していませんでしたanalysis_options.yaml
ファイル。
以来analysis_options_user.yaml
特定のフレームワークのバージョンに関連付けられていたため、
壊れずに進化するのは難しかった
既存のアプリ、パッケージ、プラグイン。その結果、糸くずが
で定義されていますanalysis_options_user.yaml
かなり時代遅れです。これを修正するには、package:flutter_lints
作成されました。 lint が有効に設定するパッケージのバージョン
既存のプロジェクトを壊すことなく進化させます。パッケージは上に構築されているため、
ダーツpackage:lints
Flutter に推奨される lint も調整します
Dart エコシステムの他の部分とのプロジェクト。
移行ガイド
以下の手順に従って、Flutter プロジェクトを移行して、最新の推奨バージョンを使用してください。
からの糸くずpackage:flutter_lints
:
dev_dependency を追加しますpackage:flutter_lints
あなたのプロジェクトにpubspec.yaml
走ることでflutter pub add --dev flutter_lints
のルートディレクトリにある
計画。
を作成しますanalysis_options.yaml
プロジェクトのルートディレクトリにあるファイル
(のそばにpubspec.yaml
ファイル)には次の内容が含まれます。
include: package:flutter_lints/flutter.yaml
新しくアクティブ化された lint セットにより、コード内のいくつかの新しい問題が特定される可能性があります。見つけるには
プロジェクトをDart をサポートする IDEまたは走るflutter analyze
コマンドラインで。報告された問題の一部は修正できる可能性があります
実行すると自動的にdart fix --apply
のルートディレクトリにある
計画。
既存のカスタム Analysis_options.yaml ファイル
プロジェクトにすでにカスタムがある場合analysis_options.yaml
ファイルをルートに置き、
追加include: package:flutter_lints/flutter.yaml
有効化するには上部にある
からの糸くずpackage:flutter_lints
。もしあなたのanalysis_options.yaml
すでに
が含まれていますinclude:
ディレクティブを維持するかどうかを決定する必要があります
それらの糸くず、またはそれを次の糸くずと交換するかどうかpackage:flutter_lints
Dart アナライザーは 1 つしかサポートしていないため、include:
指令ごとanalysis_options.yaml
ファイル。
糸くずのカスタマイズ
特定のプロジェクトに対してアクティブ化された lint は、analysis_options.yaml
ファイル。これは、以下のサンプル ファイルに示されています。
の複製analysis_options.yaml
によって生成されたファイルflutter create
新しいプロジェクトのために。
# This file configures the analyzer, which statically analyzes Dart code to
# check for errors, warnings, and lints.
#
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be
# invoked from the command line by running `flutter analyze`.
# The following line activates a set of recommended lints for Flutter apps,
# packages, and plugins designed to encourage good coding practices.
include: package:flutter_lints/flutter.yaml
linter:
# The lint rules applied to this project can be customized in the
# section below to disable rules from the `package:flutter_lints/flutter.yaml`
# included above or to enable additional rules. A list of all available lints
# and their documentation is published at
# https://dart-lang.github.io/linter/lints/index.html.
#
# Instead of disabling a lint rule for the entire project in the
# section below, it can also be suppressed for a single line of code
# or a specific dart file by using the `// ignore: name_of_lint` and
# `// ignore_for_file: name_of_lint` syntax on the line or in the file
# producing the lint.
rules:
# avoid_print: false # Uncomment to disable the `avoid_print` rule
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule
# Additional information about this file can be found at
# https://dart.dev/guides/language/analysis-options
タイムライン
リリースされたバージョン: 2.3.0-12.0.pre
安定版リリース: 2.5
参考文献
ドキュメンテーション:
package:flutter_lints
- パッケージの依存関係
- 静的解析のカスタマイズ
関連する問題:
- 問題 78432 - Flutter アプリケーションの lint セットを更新する
関連する PR:
- flutter_lints パッケージを追加
- package:flutter_lints をテンプレートに統合する